package com.resource.request;

import lombok.Data;

import java.io.Serializable;
import java.util.List;

/**
 * 合同添加/修改请求
 *
 * @author jianghao.zhang
 */
@Data
public class ContractSaveRequest implements Serializable {

    private static final long serialVersionUID = 7394022289501425160L;

    /**
     * 合同唯一标识
     */
    private Integer id;

    /**
     * 合同编号
     */
    private String number;

    /**
     * 合同标题
     */
    private String title;

    /**
     * 备注
     */
    private String remarks;

    /**
     * 跟进人列表
     */
    private List<String> follower;

    /**
     * 主合同id
     */
    private int mainId;

    /**
     * 相关客户id
     */
    private int customerId;

    /**
     * 相关客户id
     */
    private List<String> projectId;

    /**
     * 托运方（甲方）名称，其实是id
     */
    private int firstPartyName;

    /**
     * 甲方统一社会信用代码
     */
    private String firstCreditCode;

    /**
     * 承运方（乙方）名称
     */
    private int secondPartyName;

    /**
     * 乙方统一社会信用代码
     */
    private String secondCreditCode;

    /**
     * 调度费
     */
    private String point;

    /**
     * 甲方联系人姓名
     */
    private int firstLinkmanName;

    /**
     * 合同有效期（月）
     */
    private int validityPeriod;

    /**
     * 合同开始日期
     */
    private String contractStartTime;

    /**
     * 合同结束日期
     */
    private String contractEndTime;

    /**
     * 合同模板id
     */
    private int configId;

    /**
     * 合同类型
     */
    private int typeId;

    /**
     * 业务类型
     */
    private String businessType;

    /**
     * 业务模块
     */
    private String businessModel;

    /**
     * 是否分票
     */
    private int isLotting;

    /**
     * 甲方法定代表人
     */
    private String firstLegalRepresentative;

    /**
     * 乙方法定代表人
     */
    private String secondLegalRepresentative;

    /**
     * 甲方住所
     */
    private String firstAddress;

    /**
     * 乙方住所
     */
    private String secondAddress;

    /**
     * 甲方联系人姓名
     */
    private String firstLinkmanEmail;

    /**
     * 乙方联系人姓名
     */
    private String secondLinkmanEmail;

    /**
     * 甲方联系人电话
     */
    private String firstLinkmanPhone;

    /**
     * 乙方联系人电话
     */
    private String secondLinkmanPhone;

    /**
     * 签约渠道
     */
    private int signChannel;

    /**
     * 平台服务公司
     */
    private int serveCompany;

    /**
     * 乙方联系人姓名
     */
    private String secondLinkmanName;

    /**
     * 合同状态
     */
    private String contractStatus;

    /**
     * 关联单据（流程）
     */
    private int associationProcess;

    /**
     * 合同附件
     */
    private List<String> contractAttachment;

    /**
     * 资质附件
     */
    private List<String> qualificationAttachment;

    /**
     * 归档状态
     */
    private String isArchive;

    /**
     * 用印状态
     */
    private String chapterStatus;

    /**
     * 有效期状态
     */
    private String contractValidityStatus;

    /**
     * 合同归档附件
     */
    private List<String> archiveAttachment;
}